package cn.sdormitory.service;

import cn.sdormitory.basedata.vo.TeacherDorVO;
import cn.sdormitory.smartdor.entity.SdHygiene;
import cn.sdormitory.smartdor.vo.SdAttenceAppVo;
import cn.sdormitory.smartdor.vo.SdRepairAppVo;
import cn.sdormitory.sys.entity.SysDictDetail;

import java.util.List;
import java.util.Map;

public interface AppDormService {

    /**
     * 查询宿舍缺勤列表数据
     * @return
     */
    List<SdAttenceAppVo> findAttenceList(Map<String,Object> queryParam);

    /**
     * 根据学号查询学生缺勤数据
     * @return
     */
    Map<String,Object> findAttencedByStuNo(String stuNo);

    /**
     * 查询宿舍卫生数据
     * @param queryParam
     * @return
     */
    List<SdHygiene> findHygieneList(Map<String,Object> queryParam);

    /**
     * 根据学号查询学生个人卫生数据
     * @return
     */
    Map<String,Object> findHygieneByStuNo(String stuNo);

    /**
     * 查询宿舍报修列表数据
     * @param queryParam
     * @return
     */
    List<SdRepairAppVo> findRepairList(Map<String,Object> queryParam);

    /**
     * 查询宿舍楼栋
     * @return
     */
    List<SysDictDetail> findDormBuilding();

    /**
     * 查询宿舍楼层
     * @return
     */
    List<SysDictDetail> findDormStorey();

    /**
     * 根据楼栋和楼层查询宿舍号
     * @param param {key1 = buildingNo, key2 = storey}
     * @return
     */
    List<String> findDorm(Map<String,Object> param);

    /**
     * 根据班主任id查询对应宿舍信息
     * @param teacherId 班主任id
     * @return 宿舍信息
     */
    List<TeacherDorVO> getTeacherDor(Long teacherId);
}
